package fr.auzaiphe.admin.view;

import javax.swing.JTable;

import fr.auzaiphe.admin.controller.AdminController;
import fr.auzaiphe.admin.model.Joueur;

/**
 * Sélection des joueurs
 * @author Anthony REY
 * @see fr.auzaiphe.admin.view.SelectionTableResultat
 * @since 09/05/2012
 */
public class SelectionJoueur extends SelectionTableResultat
{

	/*
	 * Éléments de la base de donnée
	 */
	String prenom, nom, password, background, minutes, secondes;

	/**
	 * Rappel du constructeur de la méthode mère
	 * @param pTable
	 * @param pController
	 * @see fr.auzaiphe.admin.view.SelectionTableResultat#controller
	 */
	public SelectionJoueur(JTable pTable, AdminController pController)
	{
		super(pTable, pController);
	}

	/**
	 * Récupération des joueurs
	 */
	@Override
    protected void recuperation()
    {
        this.nom = this.getTable().getValueAt(this.getSelectedRow(), 0).toString();
        this.prenom = this.getTable().getValueAt(this.getSelectedRow(), 1).toString();

        Joueur joueurModifie = this.getController().getJoueur( this.nom, this.prenom );

        if ( joueurModifie != null )
        {
        	 AjoutJoueurFrame fenetreJoueur = new AjoutJoueurFrame(
				this.getController(),
				this.nom,
				this.prenom,
				joueurModifie.getPassword(),
				joueurModifie.getBackgroundPersonnage(),
				joueurModifie.getChrono().getSecondesRestantes()
			 );
 			 fenetreJoueur.setVisible( true );
        }
        else
        {
        	System.out.println("Le joueur que vous tentez de modifier n'existe pas.");
        }
    }

	@Override
	protected void suppression()
	{
		this.nom = this.getTable().getValueAt(this.getSelectedRow(), 0).toString();
        this.prenom = this.getTable().getValueAt(this.getSelectedRow(), 1).toString();

        Joueur joueurSupprime = this.getController().getJoueur( this.nom, this.prenom );

        if ( joueurSupprime != null )
        {
        	this.controller.supprimerJoueur( joueurSupprime );
        }
        else
        {
        	System.out.println("Le joueur que vous tentez de supprimer n'existe pas.");
        }
	}
}
